﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Collections.Generic;

namespace Confucius.entity
{
    /// <summary>
    /// Author:Liangchuan Gu
    /// date:2012-04-08
    /// </summary>
    public class Trigger
    {
        private string triggerID;

        public string TriggerID
        {
            get { return triggerID; }
            set { triggerID = value; }
        }

        private List<Condition> conditions;

        public List<Condition> Conditions
        {
            get { return conditions; }
            set { conditions = value; }
        }

        private string triggerText;

        public string TriggerText
        {
            get { return triggerText; }
            set { triggerText = value; }
        }

        private string actionObjectID;

        public string ActionObjectID
        {
            get { return actionObjectID; }
            set { actionObjectID = value; }
        }

        private string actionType;

        public string ActionType
        {
            get { return actionType; }
            set { actionType = value; }
        }

        public const string TRIGGER_STATUS = "t";
        public const string NOT_TRIGGER_STATUS = "f";
        public const string BECOME_CHATTABLE_ACTION = "npcchat";
        public const string BECOME_PICKABLE_ACTION = "itempick";
        public const string COMPLETE_QUEST_ACTION = "questcomplete";
        public const string START_QUEST_ACTION = "queststart";

        public Trigger(String triggerID) : this()
        {
            this.triggerID = triggerID;
        }

        public Trigger()
        {
            conditions = new List<Condition>();
        }
    }
}
